How and When to Flatten Java Classes?
نویسنده
چکیده
Improving modularity and reusability are two key objectives in object-oriented programming. These objectives are achieved by applying several key concepts, such as data encapsulation and inheritance. A class in an object-oriented system is the basic unit of design. Assessing the quality of an object-oriented class may require flattening the class and representing it as it really is, including all accessible inherited class members. Thus, class flattening helps in exploring the impact of inheritance on improving code quality. This paper explains how to flatten Java classes and discusses the relationship between class flattening and some applications of interest to software practitioners, such as refactoring and indicating external quality attributes.
منابع مشابه
A history of Floral diversity (pollen, spores and algal) during the latest Holocene in the Bandung basin based on palynological analysis in Cihideung, West Java, Indonesia
Floral diversity is a measure of number of type flora in an area, and reflects how vegetation develops in response to the environmental condition during a certain time interval. The present study aims to examine changes in the diversity of vegetation (pollen, spores and algae), evenness, and similarity in the Bandung Basin through a core of 240 cm depth using a ground drill, as well as the ...
متن کاملRefactoring Techniques for Migrating Applications to Generic Java Container Classes
Version 1.5 of the Java programming language will include generics, a language construct for associating typeparameterswith classes and methods. Generics are particularly useful for creating statically type-safe, reusable container classes such that a store of an inappropriate type causes a compile-time error, and that no down-casting is needed when retrieving elements. The standard libraries r...
متن کاملWorking with Java Interfaces and Classes How to separate interfaces from implementations
Software engineering has been using interfaces for over 25 years. Java, in contrast to other object-oriented programming languages like C++ and Smalltalk, provides a clean separation between interfaces and classes that implement the interfaces. For new Java developers, this requires some adjustment in thinking. This article shows not only how to distinguish between interfaces and classes, but a...
متن کاملA Prediction Model for the Combination of Class Characteristics in Large OO Applications
Many software developers are using the Java language as the language of choice on many applications. This is due to the effective use of the object-oriented (OO) paradigm to develop large software projects and the ability of the Java language to support the increasing use of web technologies in business applications. The recent release of the Java version 5.0 has further increased its popularit...
متن کاملIdiomatic Java
Some examples: What is it that we express when we use an abstract class as opposed to an interface? What is the difference between the various types of inner classes and when would we prefer one over the other? How does object initialization work in detail and why would we want to avoid invocation of virtual functions in constructors? How can we implement object release and why and when can't w...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید
ثبت ناماگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید
ورودعنوان ژورنال:
- CoRR
دوره abs/1405.2066 شماره
صفحات -
تاریخ انتشار 2014